﻿using System;
using System.Collections.Generic;
using System.ComponentModel.DataAnnotations;
using Sharp.DataTransferObject.CMS;
using Sharp.Platform.Mvc.Models;

namespace Sharp.WebBooter.Areas.CMS.Models
{
    public class VIUReViewViewModel : BaseViewModel
    {
        public Guid Id { get; set; }
        /// <summary>
        /// 标题
        /// </summary>
        [Required, MaxLength(50), Display(Name = "标题", Prompt = "标题")]
        public string Title { get; set; }

        [Required, Display(Name = "文章内容"), DataType(DataType.MultilineText)]
        public string Content { get; set; }
        /// <summary>
        /// 评级
        /// </summary>
        public byte Stars { get; set; }

        /// <summary>
        /// 是否头条
        /// </summary>
        public bool IsHeadline { get; set; }

        /// <summary>
        /// 推荐
        /// </summary>
        public bool IsElite { get; set; }
        /// <summary>
        /// 置顶
        /// </summary>
        public bool IsOnTop { get; set; }
        /// <summary>
        /// 是否删除
        /// </summary>
        public bool IsDeleted { get; set; }
        /// <summary>
        /// 是否审核
        /// </summary>
        [Display(Name = "是否通过")]
        public bool IsChecked { get; set; }

        /// <summary>
        /// 允许评论
        /// </summary>
        public bool AllowComment { get; set; }

        /// <summary>
        /// 类型
        /// </summary>
        public VIUCategoryDTO Category { get; set; }
        /// <summary>
        /// 作者
        /// </summary>
        public string Author { get; set; }
        /// <summary>
        /// 来源
        /// </summary>
        public string ComeFrom { get; set; }

        /// <summary>
        /// 添加日期
        /// </summary>
        public System.DateTime? CheckInTime { get; set; }
        /// <summary>
        /// 领域
        /// </summary>
        public ICollection<FieldDTO> Fields { get; set; }

        public ICollection<TagDTO> Tags { get; set; }

        public ICollection<MultiMediaDTO> MultiMedias { get; set; }

        public ICollection<ApproveHistoryDTO> ApproveHistories { get; set; }

        public string EditorName { get; set; }
    }
}